
package Formularios;

import Atributos.Disciplina;
import Atributos.EnviarAoBD;
import Atributos.EstagiosTabela;
import Atributos.HorasAula;
import Atributos.Objeto;
import Atributos.Professor;
import Atributos.ProfessorDias;
import Atributos.Serie;
import Metodos.*;
import java.awt.Color;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import java.util.logging.Level;
import java.util.logging.Logger;
import javax.swing.JOptionPane;
import javax.swing.JScrollPane;
import javax.swing.JTable;


public class Horario2 extends javax.swing.JFrame {
ProfessorDiasMet profdiasmet=new ProfessorDiasMet();
ProfessorDias pd=new ProfessorDias();
Professor prof=new Professor();
ProfessorMet profmet=new ProfessorMet();
Disciplina disc=new Disciplina();
DisciplinaMet discmet=new DisciplinaMet();
HorasAula ha=new HorasAula();
HorasAulaMet hamet=new HorasAulaMet();
SerieMet seriemet = new SerieMet();
Serie s = new Serie();
List<Serie> listaS;
static private String[] nomes_serie;
public static int ver1, ver2, ver3,ver4,ver5,ver6,ver7,ver8;
static Objeto obj=new Objeto();
Objeto obj2=new Objeto();
Objeto obj3=new Objeto();
ObjetoMet objmet=new ObjetoMet();
 List<Objeto> listaO;
List<Objeto> listaO2;
List<Objeto> listaO3;
static String professor,materia;
JTable jTable1 = new javax.swing.JTable();
JTable jTable2 = new javax.swing.JTable();
    
    public Horario2 () {
        TransfereDados(1);
        int j=BuscarJ();
        String[] asd=BuscarSerieTurma();
        initComponents();
        
        JScrollPane jScrollPane1 = new javax.swing.JScrollPane();
        JScrollPane jScrollPane2 = new javax.swing.JScrollPane();
        
                jTable2.setModel(new javax.swing.table.DefaultTableModel(
    new Object [59][j],
    asd
));
jTable2.setBackground(Color.black);
jTable2.setForeground(Color.WHITE);
jTable2.setGridColor(Color.ORANGE);

jScrollPane2.setViewportView(jTable2);

        javax.swing.GroupLayout layout2 = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout2);
        layout2.setHorizontalGroup(
            layout2.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout2.createSequentialGroup()
                .addContainerGap(15, Short.MAX_VALUE)
                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 1000, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
        layout2.setVerticalGroup(
            layout2.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout2.createSequentialGroup()
                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, 500, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(0, 59, Short.MAX_VALUE))
        );
        
        jTable1.setModel(new javax.swing.table.DefaultTableModel(
    new Object [59][j],
    asd
));
jTable1.setBackground(Color.black);
jTable1.setForeground(Color.WHITE);
jTable1.setGridColor(Color.ORANGE);

jScrollPane1.setViewportView(jTable1);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap(15, Short.MAX_VALUE)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 1000/*1400*/, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap())
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 500/*823*/, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(0, 59, Short.MAX_VALUE))
        );
        
        
        

        this.setExtendedState(MAXIMIZED_BOTH);
        
        if(EstagiosTabela.id==1){
      InsereEstagios();
            try {
                Insere3ano();
            } catch (SQLException ex) {
                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
            }
      }
        try {
            GerarHorario();
        } catch (SQLException ex) {
            Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
        }
        try {
            PreencheEspacosVazios();
        } catch (SQLException ex) {
            Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
        }
        try {
            listaO=objmet.CriaListObj();
        } catch (SQLException ex) {
            Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
        }
        if(!listaO.isEmpty()){
           
                
            try {
            AlocaAulasRestantes();
        } catch (SQLException ex) {
            Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
        }
            
        }
        try {
            listaO=objmet.CriaListObj();
        } catch (SQLException ex) {
            Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
        }
        
        if(!listaO.isEmpty()){
            JOptionPane.showMessageDialog(rootPane, "ainda tenm aula");
        }
        int indice=0;
        for(int l=0;l<j;l++){
            for(int i=0;i<59;i++){
                if(jTable1.getModel().getValueAt(i,l)!=null){
                    indice++;
                }
                
            }
        }
        
        
//        if(indice==(45*j) || indice==(45*j)+5 || indice==(45*j)+10 || indice==(45*j)+15 || indice==(45*j)+20 || indice==(45*j)+25 || indice==(45*j)+30 || indice==(45*j)+35 || indice==(45*j)+40){
            EnviarDadosParaBD(j); 
//        }

            
    
//           TransfereDados(2); 
        
    }

   
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        jDialog1 = new javax.swing.JDialog();
        jPanel1 = new javax.swing.JPanel();
        jSeparator1 = new javax.swing.JSeparator();
        jl_serie = new javax.swing.JLabel();

        jPanel1.setBackground(new java.awt.Color(0, 0, 0));
        jPanel1.setLayout(null);

        jSeparator1.setBackground(new java.awt.Color(255, 153, 0));
        jSeparator1.setForeground(new java.awt.Color(0, 0, 0));
        jSeparator1.setOrientation(javax.swing.SwingConstants.VERTICAL);
        jPanel1.add(jSeparator1);
        jSeparator1.setBounds(31, 10, 10, 180);

        jl_serie.setBackground(new java.awt.Color(0, 0, 0));
        jl_serie.setFont(new java.awt.Font("D3 Euronism italic", 1, 18)); // NOI18N
        jl_serie.setForeground(new java.awt.Color(255, 255, 255));
        jl_serie.setText("<html>Aguarde o Horario ser gerado ou\n<br> as dependencias surgirem.\n</html>");
        jPanel1.add(jl_serie);
        jl_serie.setBounds(50, 60, 590, 80);

        javax.swing.GroupLayout jDialog1Layout = new javax.swing.GroupLayout(jDialog1.getContentPane());
        jDialog1.getContentPane().setLayout(jDialog1Layout);
        jDialog1Layout.setHorizontalGroup(
            jDialog1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.PREFERRED_SIZE, 549, javax.swing.GroupLayout.PREFERRED_SIZE)
        );
        jDialog1Layout.setVerticalGroup(
            jDialog1Layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addComponent(jPanel1, javax.swing.GroupLayout.DEFAULT_SIZE, 201, Short.MAX_VALUE)
        );

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 400, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 300, Short.MAX_VALUE)
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        
        /*
         * Create and display the form
         */
        java.awt.EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                new Horario2().setVisible(true);
            }
        });
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.JDialog jDialog1;
    private javax.swing.JPanel jPanel1;
    private javax.swing.JSeparator jSeparator1;
    private javax.swing.JLabel jl_serie;
    // End of variables declaration//GEN-END:variables
//colocar aki os metodos recoratdos
 private int BuscarJ() {
        
        int j;
        j=seriemet.BuscarQuantdeSerie();
        
        return j;
    }

private String[] BuscarSerieTurma() {
          
         listaS = null;
        try {
            listaS = seriemet.getList();
        } catch (SQLException ex) {
            Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
        }
        
       String[]  nomes_turma = new String [listaS.size()];
       String[]  nomes_ano = new String [listaS.size()];
       nomes_serie = new String [listaS.size()];
       int[] id_series = new int [listaS.size()];
        
        int i=0;   
        while(listaS.size()>i){
        s = listaS.get(i);
        id_series[i] = s.getId();
        nomes_ano[i] = s.getNome();
        nomes_turma[i] = s.getTurma();
        nomes_serie[i] = nomes_ano[i] + nomes_turma[i];
        System.out.println("nome: " + nomes_serie[i]);
        i++;
        }
        
        return nomes_serie;
}

 private void InsereEstagios    () {
        String[] a=EstagiosTabela.getEstagioA();
        String[] b=EstagiosTabela.getEstagioB();
        String[] c=EstagiosTabela.getEstagioC();
        String[] d=EstagiosTabela.getEstagioD();
        String[] e=EstagiosTabela.getEstagioE();
        String[] f=EstagiosTabela.getEstagioF();
        String[] g=EstagiosTabela.getEstagioG();
        String[] h=EstagiosTabela.getEstagioH();
           
        if(a[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( a[0].equals(nomes_serie[i])){
            ver1=i;
             System.out.println("dia: "+ver1);
        }   
        }
        }
        if(b[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( b[0].equals(nomes_serie[i])){
            ver2=i;
            System.out.println("dia: "+ver2);
        }   
        }
        }
        if(c[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( c[0].equals(nomes_serie[i])){
            ver3=i;
            System.out.println("dia: "+ver3);
        }   
        }
        }
        if(d[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( d[0].equals(nomes_serie[i])){
            ver4=i;
        }   
        }
        }
        if(e[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( e[0].equals(nomes_serie[i])){
            ver5=i;
        }   
        }
        }
        if(f[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( f[0].equals(nomes_serie[i])){
            ver6=i;
        }   
        }
        }
        if(g[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( g[0].equals(nomes_serie[i])){
            ver7=i;
        }   
        }
        }
        if(h[1]!=null){
        for(int i=0;listaS.size()>i;i++){
         if( h[0].equals(nomes_serie[i])){
            ver8=i;
        }   
        }
        }
        
        if(a!=null && "Manhã".equals(a[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver1);
         
        }
        if(a!=null && "Tarde".equals(a[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver1);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver1);
        }
        if(b!=null && "Manhã".equals(b[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver2);
        }
        if(b!=null && "Tarde".equals(b[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver2);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver2);
        }
        if(c!=null && "Manhã".equals(c[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver3);
        }
        if(c!=null && "Tarde".equals(c[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver3);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver3);
        }
        if(d!=null && "Manhã".equals(d[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver4);
        }
        if(d!=null && "Tarde".equals(d[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver4);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver4);
        }
        if(e!=null && "Manhã".equals(e[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver5);
        }
        if(e!=null && "Tarde".equals(e[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver5);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver5);
        }
        if(f!=null && "Manhã".equals(f[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver6);
        }
        if(f!=null && "Tarde".equals(f[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver6);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver6);
        }
        
        if(g!=null && "Manhã".equals(g[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver7);
        }
        if(g!=null && "Tarde".equals(g[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver7);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver7);
        }
        
        if(h!=null && "Manhã".equals(h[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 0,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 1,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 2,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 3,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 4,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 12,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 13,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 14,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 15,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 16,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 24,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 25,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 26,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 27,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 28,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 36,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 37,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 38,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 39,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 40,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 48,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 49,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 50,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 51,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 52,ver8);
        }
        if(h!=null && "Tarde".equals(h[1])){
         jTable1.getModel().setValueAt("ESTAGIO", 6,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 7,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 8,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 9,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 18,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 19,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 20,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 21,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 30,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 31,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 32,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 33,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 42,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 43,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 44,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 45,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 54,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 55,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 56,ver8);
         jTable1.getModel().setValueAt("ESTAGIO", 57,ver8);
    
        }
    }
 
 private void Insere3ano     () throws SQLException {
       
            listaO=objmet.CriaListObjPara3ano();
            listaS=seriemet.getList();
       for(int z=0;listaS.size()>z;z++){
            
            for(int w=0;listaO.size()>w;w++){
               
                obj=listaO.get(w);
                
                if("Regular".equals(obj.getEixo())){
                     
                    if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                        
                        if(obj.getDia()==1){
                           ChamaDiaUM3(obj,z); 
                        }
                        if(obj.getDia()==2){
                            
                        ChamaDiaDOIS3(obj,z);
                        }
                        if(obj.getDia()==3){
                           ChamaDiaTRES3(obj,z);
                        }
                        if(obj.getDia()==4){
                            ChamaDiaQUATRO3(obj,z);
                        }
                        if(obj.getDia()==5){
                            ChamaDiaCINCO3(obj,z);
                        }
                            
                        
                        

                }
                
            }if("Profissional".equals(obj.getEixo())){
                    
                    if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                        if(obj.getDia()==1){
                            ChamaDiaUMProf3(obj, z);
                        }
                        if(obj.getDia()==2){
                              ChamaDiaDOISProf3(obj, z);
                        }
                        if(obj.getDia()==3){
                            ChamaDiaTRESProf3(obj, z);
                        }
                        if(obj.getDia()==4){
                            ChamaDiaQUATROProf3(obj, z);
                        }
                        if(obj.getDia()==5){
                            ChamaDiaCINCOProf3(obj, z);
                        }
                  
                       
                       
                        }
                    }
        }
       }     
        
        
        
        
        
        
   
    }

 private void ChamaDiaUM3   (Objeto obj,int z) throws SQLException {
            
            if(jTable1.getModel().getValueAt(0,z)=="ESTAGIO"){
                
                
               for(int y=6;y<=10;y++){
                    if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==6 || y==8 || y==9){
                       if(y==6){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==8){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc() .equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==9){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=6;y<=10;y++){
                   if(y==6){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || obj.getNomeprof()!=jTable2.getModel().getValueAt(7,z)) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==7){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==8){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==9){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==10){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(6,z)=="ESTAGIO"){
                
                for(int y=0;y<=4;y++){
                     if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y+1);
                     }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==0 || y==2 || y==3){
                       if(y==0){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==2){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==3){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=0;y<=4;y++){
                   if(y==0){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==1){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==2){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==3){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==4){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=0;y<=9;y++){
                    if(y==0 || y==1 || y==2 || y==3 || y==4 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y+1);
                         }
                    }else{
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==0 || y==2 || y==3 || y==6 || y==8){
                         if(y==0){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==2){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==3){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==6){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==8){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=0;y<=9;y++){
                   if(y==0){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==1){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==2){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==3){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==4){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==6){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==7){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==8){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==9){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  
                   
               }

                        }
        
    }
 
 private void ChamaDiaDOIS3    (Objeto obj,int z) throws SQLException {
            
            if(jTable1.getModel().getValueAt(12,z)=="ESTAGIO"){
                
                
               for(int y=18;y<=22;y++){
                    if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-12);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==18 || y==20 || y==21){
                       if(y==18){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==20){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==21){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=18;y<=22;y++){
                   if(y==18){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==19){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==20){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==21){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==22){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(18,z)=="ESTAGIO"){
                
                for(int y=12;y<=16;y++){
                     if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-11);
                     }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==12 || y==14 || y==15){
                       if(y==12){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==14){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==15){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=12;y<=16;y++){
                   if(y==12){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==13){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==14){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==15){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==16){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=12;y<=21;y++){
                    if(y==12 || y==14 || y==15 || y==18 || y==20 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-11);
                         }
                    }else{
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-12);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==12 || y==14 || y==15 || y==18 || y==20){
                         if(y==12){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==14){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==15){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==18){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==20){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=12;y<=21;y++){
                   if(y==12){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==13){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==14){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==15){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==16){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==18){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==19){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==20){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==21){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
        
    }
 
 private void ChamaDiaTRES3   (Objeto obj,int z) throws SQLException {
            
            if(jTable1.getModel().getValueAt(24,z)=="ESTAGIO"){
                
                
               for(int y=30;y<=34;y++){
                    if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-24);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==30 || y==32 || y==33){
                       
                       if(y==30){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                              
                              if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==32){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==33){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=30;y<=34;y++){
                   if(y==30){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==31){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==32){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==33){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==34){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(30,z)=="ESTAGIO"){
                
                for(int y=24;y<=28;y++){
                     if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-23);
                     }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==24 || y==26 || y==27){
                       if(y==24){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==26){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==27){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=24;y<=28;y++){
                   if(y==24){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==25){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==26){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==27){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==28){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=24;y<=33;y++){
                    if(y==24 || y==26 || y==27 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-23);
                         }
                    }else if( y==30 || y==32){
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-24);
                         }
                    }else{
                        listaO2=objmet.CriaListObj2(obj,y-24);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==24 || y==26 || y==27 || y==30 || y==32){
                         if(y==24){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==26){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==27){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==30){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==32){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=24;y<=33;y++){
                   if(y==24){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==25){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==26){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==27){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==28){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==30){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==31){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==32){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==33){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
        
    }

 private void ChamaDiaQUATRO3   (Objeto obj,int z) throws SQLException {
            
            if(jTable1.getModel().getValueAt(36,z)=="ESTAGIO"){
                
                
               for(int y=42;y<=46;y++){
                    if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-36);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==42 || y==44 || y==45){
                       
                       if(y==42){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                              
                              if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==44){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==45){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=42;y<=46;y++){
                   if(y==42){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==43){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==44){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==45){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==46){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(42,z)=="ESTAGIO"){
                
                for(int y=36;y<=40;y++){
                     if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-35);
                     }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==36 || y==38 || y==39){
                       if(y==36){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==38){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==39){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=36;y<=40;y++){
                   if(y==36){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==37){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==38){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==39){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==40){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=36;y<=45;y++){
                    if(y==36 || y==38 || y==39 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-35);
                         }
                    }else if( y==42 || y==44){
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-36);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==36 || y==38 || y==39 || y==42 || y==44){
                         if(y==36){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==38){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==39){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==42){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==44){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=36;y<=45;y++){
                   if(y==36){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==37){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==38){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==39){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==40){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==42){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==43){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==44){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==45){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
        
    }
 
 private void ChamaDiaCINCO3   (Objeto obj,int z) throws SQLException {
            
            if(jTable1.getModel().getValueAt(48,z)=="ESTAGIO"){
                
                
               for(int y=54;y<=58;y++){
                    if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-48);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==54 || y==56 || y==57){
                       
                       if(y==54){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                              
                              if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==56){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==57){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=54;y<=58;y++){
                   if(y==54){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==55){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==56){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==57){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==58){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(54,z)=="ESTAGIO"){
                
                for(int y=48;y<=52;y++){
                     if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-47);
                     }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==48 || y==50 || y==51){
                       if(y==48){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==50){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==51){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=48;y<=52;y++){
                   if(y==48){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==49){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==50){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==51){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==52){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=48;y<=57;y++){
                    if(y==48 || y==50 || y==51 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-47);
                         }
                    }else if( y==54 || y==56){
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-48);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==48 || y==50 || y==51 || y==54 || y==56){
                         if(y==48){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==50){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==51){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) &&  (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==54){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==56){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=48;y<=57;y++){
                   if(y==48){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==49){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==50){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==51){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==52){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==54){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==55){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==56){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==57){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
        
    }
 
 
 
 
 
 
 private void ChamaDiaUMProf3  (Objeto obj,int z) throws SQLException {
   if(jTable1.getModel().getValueAt(0,z)=="ESTAGIO"){
                
                
               for(int y=6;y<=10;y++){
                   
                   listaO2=objmet.CriaListObj2(obj,y);
                   listaO3=objmet.CriaListObj2(obj,y+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==6 || y==8 || y==9){
                       if(y==6){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==8){
                            if(obj.getCH()>=3 && obj.getHA()>=3){
                                if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc() .equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1 && obj3.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    }  
                            }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc() .equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                            }
                       }if(y==9){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=6;y<=10;y++){
                   if(y==6){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || obj.getNomeprof()!=jTable2.getModel().getValueAt(7,z)) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==7){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==8){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==9){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(10,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(10,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==10){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(6,z)=="ESTAGIO"){
                
                for(int y=0;y<=4;y++){
                   listaO2=objmet.CriaListObj2(obj,y+1);
                   listaO3=objmet.CriaListObj2(obj,y+2);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==0 || y==2 || y==3){
                       if(y==0){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==2){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null  && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2 && obj3.getAula()==y+3){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    } 
                           }else{
                               
                           
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                           }
                       }if(y==3){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=0;y<=4;y++){
                   if(y==0){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==1){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==2){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==3){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==4){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=0;y<=9;y++){
                    if(y==0 || y==2 || y==3){
                        listaO2=objmet.CriaListObj2(obj,y+1);
                        listaO3=objmet.CriaListObj2(obj,y+2);
                    }else if(y==6 || y==8 ){
                   listaO2=objmet.CriaListObj2(obj,y);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==0 || y==2 || y==3 || y==6 || y==8){
                         if(y==0){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==2){
                          if(obj.getCH()>=3 && obj.getHA()>=3){
                              if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2 && obj3.getAula()==y+3){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                Insere3ano();
                                            } 
                                    }  
                          }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                          }
                       }if(y==3){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==6){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==8){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=0;y<=9;y++){
                   if(y==0){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==1){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==2){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==3){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==4){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==6){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==7){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==8){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==9){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  
                   
               }

                        }    
        
                        
                        
    }

    private void ChamaDiaDOISProf3 (Objeto obj, int z) throws SQLException  {
      if(jTable1.getModel().getValueAt(12,z)=="ESTAGIO"){
                
                
               for(int y=18;y<=22;y++){
                   listaO2=objmet.CriaListObj2(obj,y-12);
                   listaO3=objmet.CriaListObj2(obj,(y-12)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==18 || y==20 || y==21){
                       if(y==18){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==20){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                              if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1 && obj3.getAula()==(y-12)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    }   
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==21){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=18;y<=22;y++){
                   if(y==18){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==19){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==20){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==21){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(22,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(22,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==22){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(18,z)=="ESTAGIO"){
                
                for(int y=12;y<=16;y++){
                   listaO2=objmet.CriaListObj2(obj,y-11);
                   listaO3=objmet.CriaListObj2(obj,(y-11)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==12 || y==14 || y==15){
                       if(y==12){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==14){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1 && obj3.getAula()==(y-11)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    }  
                           }else{
                               
                           
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==15){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=12;y<=16;y++){
                   if(y==12){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==13){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==14){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==15){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==16){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=12;y<=21;y++){
                    if(y==12 || y==14 || y==15 ){
                        listaO2=objmet.CriaListObj2(obj,y-11);
                        listaO3=objmet.CriaListObj2(obj,(y-11)+1);
                    }else if( y==18 || y==20){
                         listaO2=objmet.CriaListObj2(obj,y-12);
                        listaO3=objmet.CriaListObj2(obj,(y-12)+1);   
                    }else{
                   listaO2=objmet.CriaListObj2(obj,y-12);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==12 || y==14 || y==15 || y==18 || y==20){
                         if(y==12){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==14){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null  && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1 && obj3.getAula()==(y-11)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                Insere3ano();
                                            } 
                                    }  
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==15){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==18){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==20){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=12;y<=21;y++){
                   if(y==12){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==13){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==14){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==15){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==16){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==18){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==19){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==20){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==21){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
    }

    private void ChamaDiaTRESProf3(Objeto obj, int z) throws SQLException {
       if(jTable1.getModel().getValueAt(24,z)=="ESTAGIO"){
                
                
               for(int y=30;y<=34;y++){
                   listaO2=objmet.CriaListObj2(obj,y-24);
                   listaO3=objmet.CriaListObj2(obj,(y-24)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==30 || y==32 || y==33){
                       
                       if(y==30){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                              
                              if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==32){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                            if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null  && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1 && obj2.getAula()==(y-24)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    }     
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==33){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=30;y<=34;y++){
                   if(y==30){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==31){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==32){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==33){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(34,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(34,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==34){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(30,z)=="ESTAGIO"){
                
                for(int y=24;y<=28;y++){
                   listaO2=objmet.CriaListObj2(obj,y-23);
                   listaO3=objmet.CriaListObj2(obj,(y-23)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==24 || y==26 || y==27){
                       if(y==24){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==26){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1 && obj3.getAula()==(y-23)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    }  
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==27){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=24;y<=28;y++){
                   if(y==24){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==25){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==26){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==27){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==28){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=24;y<=33;y++){
                    if(y==24 || y==26 || y==27 ){
                        listaO2=objmet.CriaListObj2(obj,y-23);
                         listaO3=objmet.CriaListObj2(obj,(y-23)+1);
                    }else if( y==30 || y==32){
                   listaO2=objmet.CriaListObj2(obj,y-24);
                    }else{
                        listaO2=objmet.CriaListObj2(obj,y-24);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==24 || y==26 || y==27 || y==30 || y==32){
                         if(y==24){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==26){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                              if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1 && obj3.getAula()==(y-23)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                Insere3ano();
                                            } 
                                    }   
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==27){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==30){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==32){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=24;y<=33;y++){
                   if(y==24){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==25){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==26){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==27){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==28){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==30){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==31){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==32){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==33){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
    }
private void ChamaDiaQUATROProf3(Objeto obj, int z) throws SQLException {
        if(jTable1.getModel().getValueAt(36,z)=="ESTAGIO"){
                
                
               for(int y=42;y<=46;y++){
                   listaO2=objmet.CriaListObj2(obj,y-36);
                   listaO3=objmet.CriaListObj2(obj,(y-36)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==42 || y==44 || y==45){
                       
                       if(y==42){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                              
                              if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==44){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1 && obj3.getAula()==(y-36)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    }  
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==45){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=42;y<=46;y++){
                   if(y==42){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==43){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==44){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==45){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(46,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(46,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==46){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(42,z)=="ESTAGIO"){
                
                for(int y=36;y<=40;y++){
                   listaO2=objmet.CriaListObj2(obj,y-35);
                  listaO3=objmet.CriaListObj2(obj,(y-35)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==36 || y==38 || y==39){
                       if(y==36){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==38){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                              if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1 && obj3.getAula()==(y-35)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    }   
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==39){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=36;y<=40;y++){
                   if(y==36){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==37){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==38){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==39){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==40){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=36;y<=45;y++){
                    if(y==36 || y==38 || y==39 ){
                        listaO2=objmet.CriaListObj2(obj,y-35);
                        listaO3=objmet.CriaListObj2(obj,(y-35)+1);
                    }else if( y==42 || y==44){
                   listaO2=objmet.CriaListObj2(obj,y-36);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==36 || y==38 || y==39 || y==42 || y==44){
                         if(y==36){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==38){
                            if(obj.getCH()>=3 && obj.getHA()>=3){
                                if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null  && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1 && obj3.getAula()==(y-35)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                Insere3ano();
                                            } 
                                    }  
                            }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                            }
                       }if(y==39){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==42){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==44){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=36;y<=45;y++){
                   if(y==36){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==37){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==38){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==39){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==40){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==42){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==43){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==44){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==45){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
    }


private void ChamaDiaCINCOProf3 (Objeto obj, int z) throws SQLException {
       if(jTable1.getModel().getValueAt(48,z)=="ESTAGIO"){
                
                
               for(int y=54;y<=58;y++){
                   listaO2=objmet.CriaListObj2(obj,y-48);
                   listaO3=objmet.CriaListObj2(obj,(y-48)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==54 || y==56 || y==57){
                       
                       if(y==54){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                              
                              if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==56){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null  && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1 && obj3.getAula()==(y-48)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                Insere3ano();
                                            } 
                                    }  
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==57){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=54;y<=58;y++){
                   if(y==54){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==55){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==56){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==57){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(58,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(58,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==58){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
            
            }else if(jTable1.getModel().getValueAt(54,z)=="ESTAGIO"){
                
                for(int y=48;y<=52;y++){
                   listaO2=objmet.CriaListObj2(obj,y-47);
                   listaO3=objmet.CriaListObj2(obj,(y-47)+1);
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==48 || y==50 || y==51){
                       if(y==48){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==50){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                              if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null  && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1 && obj3.getAula()==(y-47)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3); 
                                                                Insere3ano();
                                            } 
                                    } 
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }
                           }
                       }if(y==51){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   }
               }for(int y=48;y<=52;y++){
                   if(y==48){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==49){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==50){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==51){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==52){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   
               }
                
                
            }else {
                
                for(int y=48;y<=57;y++){
                    if(y==48 || y==50 || y==51 ){
                        listaO2=objmet.CriaListObj2(obj,y-47);
                        listaO3=objmet.CriaListObj2(obj,(y-47)+1);
                    }else if( y==54 || y==56){
                   listaO2=objmet.CriaListObj2(obj,y-48);
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==48 || y==50 || y==51 || y==54 || y==56){
                         if(y==48){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==50){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1 && obj3.getAula()==(y-47)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                Insere3ano();
                                            } 
                                    }  
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                 
                                                                Insere3ano();
                                            } 
                                    }  
                           }
                       }if(y==51){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) &&  (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                        if(y==54){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                Insere3ano();
                                            } 
                                    }  
                       }if(y==56){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                Insere3ano();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=48;y<=57;y++){
                   if(y==48){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==49){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==50){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==51){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==52){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==54){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                   if(y==55){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==56){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                  if(y==57){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                Insere3ano();
                                            } 
                                    } 
                                        }
                 
                   
               }

                        }
        
    }

    private void GerarHorario() throws SQLException {
            listaO=objmet.CriaListObj();
            listaS=seriemet.getList();
        for(int z=0;listaS.size()>z;z++){
            
            for(int w=0;listaO.size()>w;w++){
               
                obj=listaO.get(w);
                
                if("Regular".equals(obj.getEixo())){
                     
                    if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                        if(obj.getDia()==1){
                          ChamaDiaUM(obj,z);  
                        }
                        if(obj.getDia()==2){
                           ChamaDiaDOIS(obj,z); 
                        }
                        if(obj.getDia()==3){
                            ChamaDiaTRES(obj,z);
                        }
                        if(obj.getDia()==4){
                            ChamaDiaQUATRO(obj,z);
                        }
                        if(obj.getDia()==5){
                             ChamaDiaCINCO(obj,z);
                        }
                        
                        
                        
                       
                            
                }
                
            }
                
            
                
                if("Profissional".equals(obj.getEixo())){
                    
                    if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                        if(obj.getDia()==1){
                            ChamaDiaUMProf(obj, z);
                        }
                        if(obj.getDia()==2){
                            ChamaDiaDOISProf(obj, z);
                        }
                        if(obj.getDia()==3){
                            ChamaDiaTRESProf(obj, z);
                        }
                        if(obj.getDia()==4){
                           ChamaDiaQUATROProf(obj, z); 
                        }
                        if(obj.getDia()==5){
                             ChamaDiaCINCOProf(obj, z);
                        }
                        
                        
                        
                        
                       
                     
                        }
                    }     
                
                
                
        }
       }     
        

    }
  
    private void ChamaDiaUM (Objeto obj, int z) throws SQLException {
         
                for(int y=0;y<=9;y++){
                    if(y==0 || y==1 || y==2 || y==3 || y==4 ){
                        if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y+1);
                        }
                    }else{
                        if( obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y);
                        }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==0 || y==2 || y==3 || y==6 || y==8){
                         if(y==0 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==2 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==3 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==6 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==8 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=0;y<=9;y++){
                   if(y==0 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==1 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==2 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==3 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==4 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==6 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==7 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==8 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==9 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                              GerarHorario();
                                            } 
                                    } 
                                        }
                  
                   
               }
    }

    private void ChamaDiaDOIS (Objeto obj, int z) throws SQLException {
        for(int y=12;y<=21;y++){
                    if(y==12 || y==14 || y==15 || y==18 || y==20 ){
                        if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-11);
                        }
                    }else{
                        if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-12);
                        }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==12 || y==14 || y==15 || y==18 || y==20){
                         if(y==12 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==14 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==15 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==18 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==20 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=12;y<=21;y++){
                   if(y==12 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==13 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==14 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==15 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==16 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==18 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==19 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==20 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==21 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void ChamaDiaTRES(Objeto obj, int z) throws SQLException {
         for(int y=24;y<=33;y++){
                    if(y==24 || y==26 || y==27 ){
                        if( obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-23);
                        }
                    }else if( y==30 || y==32){
                        if( obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-24);
                        }
                    }else{
                        if( obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-24);
                        }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==24 || y==26 || y==27 || y==30 || y==32){
                         if(y==24 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                obj=null; 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==26 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==27 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==30 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==32 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=24;y<=33;y++){
                   if(y==24 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==25 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==26 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==27 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==28 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==30 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==31 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==32 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==33 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void ChamaDiaQUATRO(Objeto obj, int z) throws SQLException {
           for(int y=36;y<=45;y++){
                    if(y==36 || y==38 || y==39 ){
                        if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-35);
                        }
                    }else if( y==42 || y==44){
                        if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-36);
                        }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==36 || y==38 || y==39 || y==42 || y==44){
                         if(y==36 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==38 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==39 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==42 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==44 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=36;y<=45;y++){
                   if(y==36 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==37 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==38 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==39 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==40 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==42 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==43 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==44 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==45 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void ChamaDiaCINCO (Objeto obj, int z) throws SQLException {
        for(int y=48;y<=57;y++){
                    if(y==48 || y==50 || y==51 ){
                        if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-47);
                        }
                    }else if( y==54 || y==56){
                        if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-48);
                        }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==48 || y==50 || y==51 || y==54 || y==56){
                         if(y==48 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==50 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                 obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==51 && obj!=null){
                           if( jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==54 && obj!=null){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==56 && obj!=null){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=48;y<=57;y++){
                   if(y==48 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==49 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==50 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==51 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==52 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==54 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==55 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==56 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==57 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }
    private void ChamaDiaUMProf (Objeto obj, int z) throws SQLException {
         for(int y=0;y<=9;y++){
                    if(y==0 || y==2 || y==3){
                        if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y+1);
                        listaO3=objmet.CriaListObj2(obj,y+2);
                        }
                    }else if(y==6 || y==8 ){
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==0 || y==2 || y==3 || y==6 || y==8){
                         if(y==0){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==2){
                          if(obj.getCH()>=3 && obj.getHA()>=3){
                              if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2 && obj3.getAula()==y+3){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                GerarHorario();
                                            } 
                                    }  
                          }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                          }
                       }if(y==3){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y+1 && obj2.getAula()==y+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==6){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==8){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==1 && obj.getAula()==y && obj2.getAula()==y+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                               GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=0;y<=9;y++){
                   if(y==0){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==1){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==2){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==3){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("");
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==4){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==6){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                               GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==7){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==8){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(9,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(9,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==9){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(1,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(1,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(2,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(2,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(3,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(3,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(4,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(4,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(6,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(6,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(7,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(7,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(8,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(8,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(0,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(0,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  
                   
               }
    }

    private void ChamaDiaDOISProf(Objeto obj, int z) throws SQLException {
         for(int y=12;y<=21;y++){
                    if(y==12 || y==14 || y==15 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-11);
                        listaO3=objmet.CriaListObj2(obj,(y-11)+1);
                         }
                    }else if( y==18 || y==20){
                         if(obj!=null){
                         listaO2=objmet.CriaListObj2(obj,y-12);
                        listaO3=objmet.CriaListObj2(obj,(y-12)+1);   
                         }
                    }else{
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-12);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==12 || y==14 || y==15 || y==18 || y==20){
                         if(y==12){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    }  
                       }if(y==14){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null  && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1 && obj3.getAula()==(y-11)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                 GerarHorario();
                                            } 
                                    }  
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    }  
                           }
                       }if(y==15){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-11 && obj2.getAula()==(y-11)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==18){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==20){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==2 && obj.getAula()==y-12 && obj2.getAula()==(y-12)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=12;y<=21;y++){
                   if(y==12){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==13){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==14){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==15){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==16){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==18){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==19){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==20){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(21,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(21,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                 GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==21){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(13,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(13,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(14,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(14,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(15,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(15,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(16,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(16,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(18,z)) && !obj.getNomeprof().equals(jTable2.getModel().getValueAt(18,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(19,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(19,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(20,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(20,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(12,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(12,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void ChamaDiaTRESProf(Objeto obj, int z) throws SQLException {
        for(int y=24;y<=33;y++){
                    if(y==24 || y==26 || y==27 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-23);
                         listaO3=objmet.CriaListObj2(obj,(y-23)+1);
                         }
                    }else if( y==30 || y==32){
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-24);
                         }
                    }else{
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-24);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==24 || y==26 || y==27 || y==30 || y==32){
                         if(y==24){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==26){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                              if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1 && obj3.getAula()==(y-23)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                GerarHorario();
                                            } 
                                    }   
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                           }
                       }if(y==27){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-23 && obj2.getAula()==(y-23)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==30){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==32){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==3 && obj.getAula()==y-24 && obj2.getAula()==(y-24)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=24;y<=33;y++){
                   if(y==24){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==25){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==26){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==27){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==28){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==30){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==31){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==32){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(33,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(33,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==33){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(25,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(25,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(26,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(26,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(27,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(27,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(28,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(28,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(30,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(30,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(31,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(31,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(32,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(32,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(24,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(24,z)))  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void ChamaDiaQUATROProf(Objeto obj, int z) throws SQLException {
        for(int y=36;y<=45;y++){
                    if(y==36 || y==38 || y==39 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-35);
                        listaO3=objmet.CriaListObj2(obj,(y-35)+1);
                         }
                    }else if( y==42 || y==44){
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-36);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(y==36 || y==38 || y==39 || y==42 || y==44){
                         if(y==36){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==38){
                            if(obj.getCH()>=3 && obj.getHA()>=3){
                                if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null  && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1 && obj3.getAula()==(y-35)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                GerarHorario();
                                            } 
                                    }  
                            }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                            }
                       }if(y==39){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-35 && obj2.getAula()==(y-35)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==42){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==44){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==4 && obj.getAula()==y-36 && obj2.getAula()==(y-36)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 
                                                               GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=36;y<=45;y++){
                   if(y==36){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==37){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==38){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==39){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==40){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==42){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==43){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==44){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(45,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(45,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==45){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(37,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(37,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(38,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(38,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(39,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(39,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(40,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(40,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(42,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(42,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(43,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(43,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(44,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(44,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(36,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(36,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void ChamaDiaCINCOProf(Objeto obj, int z) throws SQLException {
              
                for(int y=48;y<=57;y++){
                    if(y==48 || y==50 || y==51 ){
                         if(obj!=null){
                        listaO2=objmet.CriaListObj2(obj,y-47);
                        listaO3=objmet.CriaListObj2(obj,(y-47)+1);
                         }
                    }else if( y==54 || y==56){
                         if(obj!=null){
                   listaO2=objmet.CriaListObj2(obj,y-48);
                         }
                    }
                   if(!listaO2.isEmpty()){                                
                                obj2=listaO2.get(0);
                                }
                   if(!listaO3.isEmpty()){                                
                                obj3=listaO3.get(0);
                                }
                   if(y==48 || y==50 || y==51 || y==54 || y==56){
                         if(y==48){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==50){
                           if(obj.getCH()>=3 && obj.getHA()>=3){
                               if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && jTable1.getModel().getValueAt(y+2, z)==null && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1 && obj3.getAula()==(y-47)+2){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                jTable1.getModel().setValueAt(obj3.getNomedisc(), y+2, z);
                                                                jTable2.getModel().setValueAt(obj3.getNomeprof(), y+2, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1daCHeHA(obj3.getId_prof(),obj3.getCH(),obj3.getHA(),obj3.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                objmet.Remove1diasaulasdisponivel(obj3);
                                                                GerarHorario();
                                            } 
                                    }  
                           }else{
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                 
                                                                GerarHorario();
                                            } 
                                    }  
                           }
                       }if(y==51){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) &&  (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-47 && obj2.getAula()==(y-47)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                        if(y==54){
                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                GerarHorario();
                                            } 
                                    }  
                       }if(y==56){
                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z)))){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && jTable1.getModel().getValueAt(y+1, z)==null && obj.getCH()>=2 && obj.getHA()>=2 && obj.getDia()==5 && obj.getAula()==y-48 && obj2.getAula()==(y-48)+1){
                                                         
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                jTable1.getModel().setValueAt(obj2.getNomedisc(), y+1, z);
                                                                jTable2.getModel().setValueAt(obj2.getNomeprof(), y+1, z);
                                                                objmet.Remove2daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove2diasaulasdisponivel(obj,obj2);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                System.out.println("Inseriu: "+obj2.getNomedisc()+"-"+obj2.getNomeprof());
                                                                
                                                                GerarHorario();
                                            } 
                                    }  
                       }
                   
                   
                   
                   }
                   
                   
                   
                }for(int y=48;y<=57;y++){
                   if(y==48){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==49){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==50){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==51){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==52){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==54){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                   if(y==55){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==56){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(57,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(57,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                  if(y==57){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(49,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(49,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(50,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(50,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(51,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(51,z))) && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(52,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(52,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(54,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(54,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(55,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(55,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(56,z)) || !obj.getNomeprof().equals(jTable2.getModel().getValueAt(56,z)))  && (!obj.getNomedisc().equals(jTable1.getModel().getValueAt(48,z)) || obj.getNomeprof().equals(jTable2.getModel().getValueAt(48,z))) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                
                                                                GerarHorario();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

private void PreencheEspacosVazios() throws SQLException {
        listaO=objmet.CriaListObj();
            listaS=seriemet.getList();
       for(int z=0;listaS.size()>z;z++){
            
            for(int w=0;listaO.size()>w;w++){
               if(!listaO.isEmpty()){
                obj=listaO.get(w);
                
                
                     
                    if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                        
                        if(obj.getDia()==1){
                            PreencheDia1(obj,z);
                        }
                        if(obj.getDia()==2){
                            PreencheDia2(obj,z);
                        }
                        if(obj.getDia()==3){
                           PreencheDia3(obj,z);
                        }
                        if(obj.getDia()==4){
                           PreencheDia4(obj,z); 
                        }
                        if(obj.getDia()==5){
                            PreencheDia5(obj,z);
                        }
                            
                        
                        

                }
                
               }
                    
                    
                    }
        
       }     
    }

    private void PreencheDia1  (Objeto obj, int z) throws SQLException {
        for(int y=0;y<=9;y++){
                   if(y==0 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                                
                                    } 
                                           
                                        }
                   if(y==1 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==2 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==3 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==4 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==6 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==7 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==8 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==9 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                              PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  
                   
               }
    }

    private void PreencheDia2 (Objeto obj, int z) throws SQLException {
        for(int y=12;y<=21;y++){
                   if(y==12 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==13 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==14 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==15 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==16 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==18 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    }
                  }
                   if(y==19 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==20 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==21 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void PreencheDia3(Objeto obj, int z) throws SQLException {
        for(int y=24;y<=33;y++){
                   if(y==24 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==25 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())   ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==26 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==27 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==28 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==30 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==31 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==32 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==33 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void PreencheDia4   (Objeto obj, int z) throws SQLException {
        for(int y=36;y<=45;y++){
                   if(y==36 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==37 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==38 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==39 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==40 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==42 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==43 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==44 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==45 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void PreencheDia5  (Objeto obj, int z) throws SQLException {
        for(int y=48;y<=57;y++){
                   if(y==48 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==49 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==50 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==51 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==52 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==54 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                   if(y==55 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==56 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                  if(y==57 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                               PreencheEspacosVazios();
                                            } 
                                    } 
                                        }
                 
                   
               }
    }

    private void EnviarDadosParaBD(int j) {
        
        
        for(int i=0;i<59;i++){
        List<EnviarAoBD> minhaLista;
        minhaLista = new ArrayList<>();
            for(int l=0;l<j;l++){
            EnviarAoBD a1 = new EnviarAoBD(); 
            if(jTable2.getModel().getValueAt(i, l)==null){
                a1.setAula1(String.valueOf(jTable1.getModel().getValueAt(i, l)));
                minhaLista.add(a1);
            }else{
            a1.setAula1(jTable1.getModel().getValueAt(i, l)+" - "+jTable2.getModel().getValueAt(i, l));    
            minhaLista.add(a1);   
            }
               
                  
                
            }
            try {
                objmet.AdicionaRelatorio(minhaLista);
            } catch (SQLException ex) {
                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
            }
            
        }
    }

    private void TransfereDados(int esc) {
        if(esc==1){
            
//            try {
//                objmet.PassapraTab2();
//            } catch (SQLException ex) {
//                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
//            }
//            try {
//                objmet.Passapratab2DiasAulas();
//            } catch (SQLException ex) {
//                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
//            }
            try {
                objmet.PassapraTab2prof();
            } catch (SQLException ex) {
                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
            }
        }else{
            JOptionPane.showMessageDialog(rootPane, "aki");
//            try {
//                objmet.RepassapraTab1();
//            } catch (SQLException ex) {
//                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
//            }
//            try {
//                objmet.RepassapraTab1DiasAulas();
//            } catch (SQLException ex) {
//                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
//            }
            try {
                objmet.RepassapraTab1prof();
            } catch (SQLException ex) {
                Logger.getLogger(Horario2.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
    }       
  
    

    private void AlocaAulasRestantes() throws SQLException {
        int i=0;
        while(!listaO.isEmpty() || i==50){
           
           
        listaO=objmet.CriaListObj();
            listaS=seriemet.getList();
         
       for(int z=0;listaS.size()>z;z++){
            
            for(int w=0;listaO.size()>w;w++){
               
                
                obj=listaO.get(w);
                
                
                     
                    if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                        
                        if(obj.getDia()==1){
                           
                            PreencheDia1Restante(obj,z);
                        }
                        if(obj.getDia()==2){
                            PreencheDia2Restante(obj,z);
                        }
                        if(obj.getDia()==3){
                           PreencheDia3Restante(obj,z);
                        }
                        if(obj.getDia()==4){
                           PreencheDia4Restante(obj,z); 
                        }
                        if(obj.getDia()==5){
                            PreencheDia5Restante(obj,z);
                        }
                            
                        
                        

                }
                
               
               }
                    
       } 
       
       objmet.RepassapraTab1DiasAulas2();
       
       listaO=objmet.CriaListObj();
       i++;
            System.out.println(i);
       }
            
    }
    
private void PreencheDia1Restante (Objeto obj, int z) throws SQLException {
        for(int y=0;y<=9;y++){
                   if(y==0 && obj!=null){
                       
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                                
                                    } 
                                         if(obj!=null){
                                          if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                             
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y+1);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                   if(y==1 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y+1);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                  if(y==2 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y+1);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                                                                            
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==3 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y+1);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==4 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y+1){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y+1);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==6 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    }if(obj!=null){
                                         if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                               
                                            } 
                                           }
                  }
                                        }
                   if(y==7 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                               
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                  if(y==8 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==9 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                              AlocaAulasRestantes();
                                            } 
                                    }if(obj!=null){
                                         if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==1 && obj.getAula()==y){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y);
                                                                pd.setId_dias(1);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  
                   
               }
    }
    
 private void PreencheDia2Restante(Objeto obj, int z) throws SQLException {
        for(int y=12;y<=21;y++){
                   if(y==12 && obj!=null){
                       System.out.println("entrou no dia 2");
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-11);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                               
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                   if(y==13 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-11);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                               
                                            } 
                                           }
                   }
                                        }
                  if(y==14 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-11);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                               profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==15 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-11);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==16 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-11){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-11);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==18 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-12);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                   if(y==19 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    }if(obj!=null){
                                         if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-12);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                               profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                  if(y==20 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-12);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==21 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==2 && obj.getAula()==y-12){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-12);
                                                                pd.setId_dias(2);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                 
                   
               }
    }
   
private void PreencheDia3Restante(Objeto obj, int z) throws SQLException {
        for(int y=24;y<=33;y++){
                   if(y==24 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-23);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                               
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                                              
                                            } 
                                           }
                   }
                                        }
                   if(y==25 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())   ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    }if(obj!=null){
                                         if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-23);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                  if(y==26 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-23);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==27 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-23);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==28 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-23){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-23);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==30 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-23);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                   if(y==31 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-24);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                               
                                            } 
                                           }
                   }
                                        }
                  if(y==32 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                obj=null; 
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-24);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==33 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==3 && obj.getAula()==y-24){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-24);
                                                                pd.setId_dias(3);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                               
                                            } 
                                           }
                  }
                                        }
                 
                   
               }
    }
   
private void PreencheDia4Restante (Objeto obj, int z) throws SQLException {
        for(int y=36;y<=45;y++){
                   if(y==36 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-35);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                   if(y==37 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    }if(obj!=null){
                                         if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-35);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                  if(y==38 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-35);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==39 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-35);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==40 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-35){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-35);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==42 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if( !String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-36);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                   if(y==43 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-36);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                   }
                                        }
                  if(y==44 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-36);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                  }
                                        }
                  if(y==45 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==4 && obj.getAula()==y-36){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-36);
                                                                pd.setId_dias(4);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                               materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                 
                   
               }
    }

private void PreencheDia5Restante (Objeto obj, int z) throws SQLException {
        for(int y=48;y<=57;y++){ 
                   if(y==48 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-47);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                   if(y==49 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-47);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                               materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                  if(y==50 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-47);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                  if(y==51 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if( !String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-47);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                  if(y==52 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if( !String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-47){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-47);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                  if(y==54 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                               if( !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-48);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                   if(y==55 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) &&  !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-48);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                  if(y==56 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())  ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                                AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if(!String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-48);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                               materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                                AlocaAulasRestantes();
                                                                
                                            } 
                                           }
                                    }
                                        }
                  if(y==57 && obj!=null){
                                           if(jTable1.getColumnName(z).equals(obj.getAnoturma())){
                                               System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                                if(jTable1.getModel().getValueAt(y, z)==null  && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                             
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 System.out.println("Inseriu: "+obj.getNomedisc()+"-"+obj.getNomeprof()); 
                                                                obj=null;
                                                               AlocaAulasRestantes();
                                            } 
                                    } if(obj!=null){
                                        if(jTable1.getColumnName(z).equals(obj.getAnoturma()) ){
                                            System.out.println(obj.getCH()+"-"+obj.getHA()+"-"+obj.getNomedisc()+"-"+obj.getAula());
                                               if( !String.valueOf(jTable1.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y-1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable1.getModel().getValueAt(y, z))) && !String.valueOf(jTable2.getModel().getValueAt(y+1, z)).equals(String.valueOf(jTable2.getModel().getValueAt(y, z))) && !String.valueOf(jTable1.getModel().getValueAt(y, z)).equals("ESTAGIO") && obj.getCH()>=1 && obj.getHA()>=1 && obj.getDia()==5 && obj.getAula()==y-48){
                                                                prof.setNome(String.valueOf(jTable2.getModel().getValueAt(y, z)));
                                                                disc.setNome(String.valueOf(jTable1.getModel().getValueAt(y, z)));
                                                                prof.setId(profmet.BuscaId(prof));
                                                                disc.setId_disc(discmet.BuscaIDDisciplina(disc));
                                                                hamet.Adicionar(obj.getId_serie(), prof.getId(), disc.getId_disc(), 1);
                                                                prof.setCarga_horaria(profmet.abuscaCHProf(prof));
                                                                profmet.alterarCHProf(prof);
                                                                pd.setId_aula(y-48);
                                                                pd.setId_dias(5);
                                                                pd.setId_prof(prof.getId());
                                                                profdiasmet.Adicionar2(pd);
                                                                materia=String.valueOf(jTable1.getModel().getValueAt( y, z));
                                                                professor=String.valueOf(jTable2.getModel().getValueAt( y, z));
                                                                jTable1.setValueAt("", y, z);
                                                                jTable2.setValueAt("", y, z);
                                                                jTable1.getModel().setValueAt(obj.getNomedisc(), y, z);
                                                                jTable2.getModel().setValueAt(obj.getNomeprof(), y, z);
                                                                objmet.Remove1daCHeHA(obj.getId_prof(),obj.getCH(),obj.getHA(),obj.getId_HA());
                                                                objmet.Remove1diasaulasdisponivel(obj);
                                                                 obj=null;
                                                               AlocaAulasRestantes();
                                                               
                                            } 
                                           }
                                    }
                                    System.out.println("ENTROU NO ULTIMO DIA");
                                        }
                 
                   
               }
    }



}


        
